.codeBlockContent {
  position: relative;
  /* rtl:ignore */
  direction: ltr;
  border-radius: inherit;
  margin-bottom: 1em;
}

.codeBlockTitle {
  border-bottom: 1px solid var(--ifm-color-emphasis-300);
  font-size: var(--ifm-code-font-size);
  font-weight: 500;
  padding: 0.75rem var(--ifm-pre-padding);
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}

.codeBlock {
  --ifm-pre-background: var(--prism-background-color);
  margin: 0;
}

.codeBlockTitle + .codeBlockContent .codeBlock {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.codeBlockLines {
  float: left;
  min-width: 100%;
  > span {
    padding: 0 0 0 calc(var(--ifm-pre-padding) * 2);
    color: var(--primary-font-color);
  }
}

.codeBlockLinesWithNumbering {
  display: table;
  > span:not(.codeHighlighted) {
    margin-left: calc(var(--ifm-pre-padding) * -1);
    padding: 0 0 0 var(--ifm-pre-padding);
  }
}

@media print {
  .codeBlockLines {
    white-space: pre-wrap;
  }
}

.buttonGroup {
  display: flex;
  column-gap: 0.2rem;
  position: absolute;
  /* rtl:ignore */
  right: 15px;
  top: calc(var(--ifm-pre-padding) / 2);
}

.buttonGroup button {
  display: flex;
  align-items: center;
  background: var(--prism-background-color);
  color: var(--prism-color);
  border: 1px solid var(--ifm-color-emphasis-300);
  border-radius: var(--ifm-global-radius);
  padding: 0.4rem;
  line-height: 0;
  transition: opacity var(--ifm-transition-fast) ease-in-out;
  opacity: 0;
}

.buttonGroup button:focus-visible,
.buttonGroup button:hover {
  opacity: 1 !important;
}

:global(.theme-code-block:hover) .buttonGroup button {
  opacity: 0.4;
}

.wrap {
  white-space: wrap !important;
}
